import {request} from "../../request/index.js"
Page({
  data: {
    goods_id:'',
    // address:'',
    defaultAddress:'',
    hasAddr:'',
    goods:'',
    num:'1',
    totalPrice:'',
    goodsPrice:'',
    // 使用data数据对象设置样式名  
    minusStatus: 'disabled' 
  },
  onLoad(options){
    const {goods_id}=options;
    // console.log(goods_id);
    this.setData({
      goods_id:goods_id
    });
    // 发请求 点击id的得到商品信息
    this.getGoods(goods_id)
  },
  // 得到商品详情信息
  async getGoods(id){
    let that = this;
    // 发请求得到商品信息
    const goods = await request({url:"/buyGoods",method:'post',data:{id}})
    console.log(goods);
    
    that.setData({
        goods:goods.data.result[0],
        goodsPrice:goods.data.result[0].price
    })
  },
  onShow(){
    let that = this;
    // 获取缓存中收货地址
    // wx.getStorage({
    //   key: "address",
    //   success: function(res){
    //     that.setData({
    //       address:res.data
    //     })
    //   }
    // });
    let userAddress = wx.getStorageSync("userAddress");
    // 查看缓存中是否有地址
    let hasAddr=userAddress.length;
    // 查找地址中是否有默认地址 无则长度0 有则长度不为0 wxml进行boolen判断
    that.setData({
      hasAddr
    })
    if(hasAddr){
      let defaultAddress = userAddress.find(v=>v.add_check=='true');
      if(defaultAddress){
        // 如果有默认地址
        that.setData({
          defaultAddress
        })
      }else{
        // 如果没设默认地址 以第一个地址为默认地址
        that.setData({
          defaultAddress:userAddress[0]
        })
      }
    }
  },
   // 获取收货地址
   handleChooseAddress(){    
    // 获取权限状态
    // wx.getSetting({
    //   success: (result) => {
    //     const scopeAddress = result.authSetting["scope.address"];
    //     if(scopeAddress===true||scopeAddress===undefined){
    //       wx.chooseAddress({
    //         success: (res)=>{
    //           wx.setStorage({
    //             key: 'address',
    //             data: res
    //           })
    //         }
    //       })
    //     }else{
    //       // 用户拒绝过授权 将不会再弹出授权页 需要用户自己打开
    //       wx.openSetting({
    //         success: (res) => {
    //           console.log(res);
    //           // 用户打开授权页 再次获取地址授权
    //           wx.chooseAddress({
    //             success: (res)=>{
    //               wx.setStorage({
    //                 key: 'address',
    //                 data: res
    //               })
    //             }
    //           })
    //         }
    //       });
            
    //     }
    //   },
    //   fail: () => {},
    //   complete: () => {}
    // });
    // 此时缓存中无地址信息 跳转到地址添加页 并告知从哪页跳转来的
    wx.navigateTo({
      url: '/pages/addAddress/addAddress?fromPage=buy'
    })
  },
   // 商品数量编辑
  //  -
  bindMinus() {  
    var num = this.data.num;  
    // 如果大于1时，才可以减  
    if (num > 1) {  
        num --;  
    }  
    // 只有大于一件的时候，才能normal状态，否则disable状态  
    var minusStatus = num <= 1 ? 'disabled' : 'normal';  
    // 将数值与状态写回  
    let totalPrice = this.data.goodsPrice*num;
    this.setData({  
        num: num,  
        minusStatus: minusStatus,
        totalPrice:totalPrice
    });  
},
  //  +
  bindPlus: function() {  
    var num = this.data.num;  
    // 不作过多考虑自增1  
    num ++;  
    // 只有大于一件的时候，才能normal状态，否则disable状态  
    var minusStatus = num < 1 ? 'disabled' : 'normal';  
    // 将数值与状态写回  
    let totalPrice = this.data.goodsPrice*num;
    this.setData({  
        num: num,  
        minusStatus: minusStatus,
        totalPrice:totalPrice
    });  
}, 
// 数量输入框
bindManual: function(e) {  
  var num = e.detail.value;  
  // 将数值与状态写回  
  this.setData({  
      num: num  
  });  
},
  // 支付
  // handlePay(){
  //   // 判断是否有收货地址
  //   const {address} =this.data;
  //   if(!address.userName){
  //     wx.showToast({
  //       title: '您还未选择收货地址',
  //       icon:'none'
  //     });
  //     return;
  //   }
  //   // 跳转到支付页面
  //   wx.navigateTo({
  //     url: '/pages/directlyPay/directlyPay?'
  //   })
  // }
})